﻿using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace Vendas.Test
{
    [TestClass]
    public class PoderRegistrarPedidoDeProdutos
    {
        [TestMethod]
        public void RegistrarPedidosAhClientesInformandoDiretamenteONomeQtdeEValorDoProduto()
        {
            IPedido pedido = new Pedido(nome: "Qualquer nome de produto", quantidade: 123, valor: 456);

            Assert.IsNotNull(pedido);
            Assert.IsNotNull(pedido.Nome);
            Assert.IsNotNull(pedido.Quantidade);
            Assert.IsTrue(pedido.Quantidade > 0);
            Assert.IsNotNull(pedido.Valor);
            Assert.IsTrue(pedido.Valor > 0);
        }

        [TestMethod]
        public void NaoRegistrarPedidoSeInformouNomeQtdeOuValorErrados()
        {
            Assert.
        }

        
    }

    public class Pedido : IPedido
    {
        public Pedido(string nome, int quantidade, decimal valor)
        {
            Valor = valor;
            Quantidade = quantidade;
            Nome = nome;
        }

        public string Nome { get; private set; }
        public int Quantidade { get; private set; }
        public decimal Valor { get; private set; }
    }

    public interface IPedido
    {
        string Nome { get; }
        int Quantidade { get; }
        decimal Valor { get; }
    }
}
